package com.ynet.middleground.contract.dao;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ynet.middleground.contract.entity.Contract;
import com.ynet.middleground.contract.entity.ContractSignStatistics;
import org.apache.ibatis.annotations.Param;

import java.util.Date;
import java.util.List;

/**
 * <p>
 * 合约主表 Mapper 接口
 * </p>
 *
 * @author daigaole
 * @since 2020-03-15
 */
public interface ContractMapper extends BaseMapper<Contract> {

    /**
     * 根据合约id查询相关联的合约集合
     *
     * @param contractId 合约id
     * @return 合约集合
     */
    List<Contract> queryRelationContract(@Param("contractId") Integer contractId);

    /**
     * 根据创建时间查询所有渠道合约签署情况
     *
     * @param createTimeStart 创建开始时间
     * @param createTimeEnd 创建结束时间
     * @return 时间段内所有渠道合约签署情况
     */
    List<ContractSignStatistics> statistics(@Param("createTimeStart") Date createTimeStart, @Param("createTimeEnd") Date createTimeEnd);
}
